1. Field of the Invention
The present invention relates to digital rights management (DRM), and more particularly, to an apparatus and method for reporting the operation state of digital rights management of a control device, to a control point in a home network.
2. Description of the Related Art
Home networking has been attracting increasingly more attention recently. A home network is formed with devices reproducing contents (movie, song, video game software) and devices for managing the contents reproducing devices, and is a network in which digital rights management is guaranteed by these devices.
Digital rights management includes a function for managing rights on devices belonging to a home network, and a function for managing rights on contents reproducible in a predetermined home network. Digital rights management is performed by an application program installed in a device belonging to a home network. Among digital rights management application programs being currently used, there are SmartRight suggested by Thomson, Open Conditional Content Access Management (OCCAM) suggested by Cisco Systems, xCP (extensible content protection) Cluster Protocol suggested by IBM, Digital Transmission Content Protection (DTCP) suggested by Digital Transmission License Administrator (DTLA).
In an ordinary digital rights management system, devices belonging to a home network are broken down into master devices and slave devices. A master device is a device that performs grant, change, revocation of digital rights on other devices and setting, change, and revocation of digital rights on contents existing in the home network. A slave device is a device which provides or reproduce contents according to digital rights granted by the master device. The slave devices are divided into media renderers that decode and reproduce contents and media sources that provide contents to the media renderers. Whether a device is a master device or a slave device is determined by the function performed by a DRM application program.
Meanwhile, in the recent home network systems, a universal plug and play (uPnP) protocol is used for communications between these master device and slave devices. The uPnP is a technology by which connection to and disconnection from a home network of a device forming the home network are automatically recognized such that the status as an element of the home network is automatically granted or revoked.
FIG. 1 is a diagram showing a home network according to a uPnP protocol.
The home network according to the uPnP protocol comprises control devices (CDs) and a control point (CP).
The CP 10 searches for CDs 20, 30 and 40 on the network, and by receiving advertisement messages generated when a device is newly connected to or disconnected from the home network, recognizes that the CD is newly connected to the home network. Also, the CP 10 receives the description message of each CD and event messages according to actions with CDs. Each action is defined by a markup language, for example, extensible markup language (XML).
When connected to or disconnected from the home network, one of the CDs 20, 30, and 40 sends an advertisement message to the CP 10 and sends a message confirming whether or not the CD is existing in the home network within a predetermined period. Also, the CDs 20, 30, and 40 respond to a variety of requests transmitted by the CP 10 according to the uPnP protocol. The CDs 20, 30, and 40 may be any one of a media source and a media renderer in the home network. In FIG. 1, paths 12, 14, 16 indicate message transmission and response performed between the CP 10 and CDs 20, 30, and 40, and paths 22, 32 indicate transmission and reception of contents between CDs 20, 30 and 40.
FIG. 2 is a diagram showing a structure in which contents transmission occurring between a CP and CDs is performed in digital rights management (DRM) using the uPnP.
The CP 210 comprises a uPnP module 212 which transmits messages to and receives responses to the messages from CDs according to the uPnP protocol, and a user interface 214 which receives a user input for message transmission and outputs results of message responses to the user. Generally, the CP 210 is a remote control device or a personal digital assistant (PDA), and has a display screen. In the aspect of contents reproduction, the CP 210 transfers contents search and reproduction commands from the user, to CDs according to the uPnP protocol and receives responses to the commands from CDs.
CDs are divided into media renderers and media sources according to whether the device is reproducing or providing contents.
The media source 220 comprises a uPnP module 222 which informs the CP 210 of its presence through an advertisement message by communicating with the uPnP module 212 of the CP 210, a DRM module 224 which performs digital rights management and provides contents to authorized CDs; and a contents DB 226 which stores contents.
The media renderer 230 comprises a uPnP module 232 which informs the CP 210 of its presence through an advertisement message by communicating with the uPnP module 212 of the CP 210; a DRM module 234, which performs digital rights management and receives authorized contents from a media source; and a contents reproduction unit 236 which decodes and reproduces received contents.
However, as shown in FIG. 2, while directly communicating with each other, the DRM module 224 of the media source 220 and the DRM module 234 of the media renderer 230 perform digital rights management. Accordingly, the CP 210 only recognizes error messages generating under the uPnP protocol. That is, the CP cannot know which operation of the DRM process the media source 220 or the media renderer 230 is performing, or whether or not the process being performed is successful.
In the conventional implementation as in FIG. 2, there is the problem that the user cannot recognize the operation state of the DRM modules. It is because communication between the CP and the CDs is performed through the uPnP modules, but communication between the media source and the media renderer is performed directly through the DRM modules. This problem causes an additional problem that the user cannot smoothly deal with errors occurring during the DRM process.